package com.bot.nft.module.op.domain.bo;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.Getter;
import lombok.Setter;

import javax.validation.constraints.Future;
import java.io.Serializable;
import java.util.Date;
import java.util.List;

/**
 * <p>
 *
 * </p>
 *
 * @author liu
 * @since 2024-01-24
 */
@Getter
@Setter
@TableName("op_syn_act_info")
public class OpSynActInfoBo implements Serializable {

    private static final long serialVersionUID = 1L;

    /**
     * 合成活动标识
     */
    @TableId(value = "id", type = IdType.AUTO)
    private String id;

    /**
     * 名称
     */
    private String name;

    /**
     * 活动开始时间
     */
    private Date startTime;

    /**
     * 活动结束时间
     */
    @Future(message = "合成结束时间不能小于当前时间")
    private Date endTime;

    /**
     * 合成介绍
     */
    private String remark;

    /**
     * 0未发布1已发布
     */
    private Integer status;

    /**
     * 创建人
     */
    private String createUser;

    /**
     * 创建时间
     */
    private Date createTime;

    /**
     * 更新人
     */
    private String updateUser;

    /**
     * 更新时间
     */
    private Date updateTime;

    /**
     * 删除标识
     */
    private Integer deleteFlag;

    /**
     * 合成原材料信息
     */
    private List<OpSynMaterBo> opSynMaterBos;
    /**
     * 合成藏品规则信息
     */
    private List<OpSynActRulesBo> opSynActRulesBos;
    /**
     * 门槛信息
     */
    private List<OpSynDoorsRelBo> opSynDoorsRelBos;
}
